package com.ruoyi.wmsorder.service;

import com.ruoyi.wmsorder.domain.WmsSaleorder;
import com.ruoyi.wmsorder.domain.vo.WmsSaleOrderDetailVO;
import com.ruoyi.wmsorder.domain.vo.WmsSaleorderPoPVO;
import com.ruoyi.wmsorder.domain.vo.WmsSaleorderVO;

import java.util.List;

/**
 * 销售订单Service接口
 * 
 * @author ruoyi
 * @date 2024-03-12
 */
public interface IWmsSaleorderService
{
    /**
     * 查询销售订单
     * 
     * @param id 销售订单主键
     * @return 销售订单
     */
    public List<WmsSaleOrderDetailVO> selectWmsSaleorderById(Long id);

    /**
     * 查询销售订单列表
     * 
     * @param wmsSaleorder 销售订单
     * @return 销售订单集合
     */
    public List<WmsSaleorderVO> selectWmsSaleorderList(WmsSaleorder wmsSaleorder);

    /**
     * 新增销售订单
     * 
     * @param wmsSaleorder 销售订单
     * @return 结果
     */
    public int insertWmsSaleorder(WmsSaleorder wmsSaleorder);

    /**
     * 修改销售订单
     * 
     * @param wmsSaleorder 销售订单
     * @return 结果
     */
    public int updateWmsSaleorder(WmsSaleorder wmsSaleorder);

    /**
     * 批量删除销售订单
     * 
     * @param ids 需要删除的销售订单主键集合
     * @return 结果
     */
    public int deleteWmsSaleorderByIds(Long[] ids);

    /**
     * 删除销售订单信息
     * 
     * @param id 销售订单主键
     * @return 结果
     */
    public int deleteWmsSaleorderById(Long id);

    List<WmsSaleorderPoPVO> selectWmsSaleorderPopList(WmsSaleorder wmsSaleorder);
}
